F: Custom Claims Implementation
NOTE: The information contained within this appendix is worded using Engineering terms and concepts, please be aware that this appendix is intended for an audience which requires a software development background.
In order to leverage the new custom claims feature within the application, you will need to ensure that you have set up the claim rules on your AD server. For more information on how to set up your AD, see Additional configuration to support ADFS.
As a starting point, the application comes with a sample custom claim to allow you to see how the features work using custom claims from an LDAP setup. In your installation directory, you can see two new files:
- SampleClaimDescriptionMapping.xml
- ClaimDescriptionProviders.xml
Located on the MSI is a C# project which will allow you to write a custom claims implementation of your own.
The ClaimDescriptionProviders file is provided to allow administrators the ability to define their own endpoints to use as custom claim providers.
Below is the XML content of that file, showing that for eachcustom provider an associated tag must be placed within the "Providers" element ensuring that the following attributed are also supplied:
| Assembly | The fully qualified name of the dynamic link library (.dll) file which provides the functionality for the custom claim. |
| Class | The fully qualified name-space which is used as the entry point to the aforementioned assembly. |
<Providers>
<Provider Assembly="HPE.Integration.SharePoint.Claims.Provider" Class="HPE.Integration.SharePoint.Claims.Provider.SampleProvider"></Provider>
</Providers>
In order to leverage the custom claims functionality, you also need to provide a mapping which defines what your custom claim is using as the authentication component.
<ClaimDescriptions>
<!-- This sample provider assumes you have created a custom ADFS claim description and mapped that to the department user property -->
<ClaimDescription Name="Department" ActiveDirectoryAttribute="Department" />
</ClaimDescriptions>
The SampleClaimDescriptionMapping file clearly shows how to create such an entry. As in the previous file, each custom claim requires its own "ClaimDescription" XML tag with the following attributes present:
| Name | A plain text attribute which will be used on the user interface. |
| ActiveDirectoryAttribute | The name of the variable which will be used as the claim. |
NOTE: This is an example only. You will need to ensure that the custom code you use to